package binary;

/**
 * 16进制的演示
 * 16进制：缩写2进制
 * 0x为16进制字面量前缀
 * 0b为2进制字面量前缀，可以加下划线_一般不用，一般都是16进制缩写
 * 计算机内部没有10进制，也没有16进制，只有2进制
 * Inter.toHexString()可以将16进制数返回
 * 显示16进制:System.out.println(Integer.toHexString(n));
 * 用途：因为2进制书写太麻烦，所以常常用16进制来缩写2进制
 * 如何缩写；将2进制从低位开始，每4位2进制缩为16进制
 */
public class HexDemo {
    public static void main(String[] args) {
        /*
        int n = 0x2fd47b;
        int m = 0b10_1111_1101_0100_0111_1011;
        System.out.println(Integer.toBinaryString(n));
        System.out.println(Integer.toBinaryString(m));
        System.out.println(Integer.toHexString(n));
        System.out.println(Integer.toHexString(m));
        System.out.println(n);
        System.out.println(m);
         */

        /**
         * 8进制：
         * 规则：逢8进1
         * 数字：0,1,2,3,4,5,6,7
         * 基数：8
         * 权：512 64 8 1
         */
        int a = 067;
        System.out.println(a);
    }
}
